
//options: 中间件的配置项，框架会将 app.config[${middlewareName}] 传递进来。
//app: 当前应用 Application 的实例。


module.exports = (options, app) => {
    return async function printDate(ctx, next) {
        //返回一个异步的方法

        // var forbidip = '127.0.0.1';  
        // if(ctx.request.ip==forbidip){
        //     ctx.status=403;
        //     ctx.body='您的ip已被禁止访问';
        // }
        // else{
        //     await next();
        // }

        var fobidip=options.forbidips;
        var clientip=ctx.request.ip;
        console.log(clientip);
        var hasIp=fobidip.some(function(val){
            console.log(val);
            if(val==clientip){
               
                return true;
            }
        })

        if(hasIp){
            ctx.status=403;
            ctx.body='您的ip已被禁止访问';
        }
        else{
            await next();

        }
        
        
    }
}